#ifndef CAMERA_HPP
#define CAMERA_HPP

#include "Common.hpp"

#include "Transform.hpp"

class Camera
{
public:
  Camera();
  
  glm::mat4 getViewMatrix();
  glm::mat4 getProjectionMatrix();
  
  void updateView();
  void updateProjection(int width, int height);
  mat4 lakitu(const vec3 posPrev);
  
private:
  
  Transform  m_viewTransform;
  glm::mat4  m_projectionMatrix;
  
  float m_fovy;
  float m_near;
  float m_far;
  
};

#endif // CAMERA_HPP